package com.edata.bigdata.streaming

import org.apache.log4j.Logger
import org.apache.spark.broadcast.Broadcast
import org.apache.spark.rdd.RDD
import org.apache.spark.sql.SparkSession

trait Producer[V, T] {
  @transient lazy val LOGGER = Logger.getLogger(this.getClass)
  var sourceType: String
  var session: SparkSession
  var producer: Broadcast[T]

  def create(): Unit

  def sendData(rdd: RDD[V],args:String*): Unit

}
